package com.yanqu.road.entity.activity.douluodalu.log;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.player.UserBaseInfo;

import java.util.ArrayList;
import java.util.List;

/**
 * 森林事件日志
 */
@FieldTypeAnnotation(tableName = "t_c_douluodalu_event_notice")
public class DouLuoDaLuEventNoticeData extends DataObject {

    @FieldTypeAnnotation(select = true, update = true, desc = "活动ID")
    private int activityId;
    @FieldTypeAnnotation(desc = "组id")
    private int groupId;
    @FieldTypeAnnotation(desc = "玩家ID")
    private long userId;

    @FieldTypeAnnotation(desc = "类型/事件类型")
    private int type;

    @FieldTypeAnnotation(desc = "区域")
    private int regionId;

    @FieldTypeAnnotation(desc = "奖励")
    private String rewards = "";

    @FieldTypeAnnotation(desc = "消耗")
    private String consume = "";

    @FieldTypeAnnotation(desc = "魂兽id")
    private int monsterId;

    @FieldTypeAnnotation(desc = "事件id")
    private int eventId;

    @FieldTypeAnnotation(desc = "其他参数")
    private List<String> paramList = new ArrayList();

    @FieldTypeAnnotation(desc = "玩家详情")
    private UserBaseInfo userBaseInfo;

    @FieldTypeAnnotation(desc = "对手玩家详情")
    private UserBaseInfo enemyBaseInfo;

    @FieldTypeAnnotation(desc = "攻击类型（1：魂师对决；2：标记协助）")
    private int attackType;

    @FieldTypeAnnotation(desc = "队友详情")
    private UserBaseInfo friendBaseInfo;

    @FieldTypeAnnotation(desc = "时间")
    private long  logTime;

    public DouLuoDaLuEventNoticeData() {
    }

    public DouLuoDaLuEventNoticeData(int activityId, int groupId, long userId) {
        this.activityId = activityId;
        this.groupId = groupId;
        this.userId = userId;
        setInsertOption();
    }

    public int getActivityId() {
        return activityId;
    }

    public void setActivityId(int activityId) {
        this.activityId = activityId;
    }

    public int getGroupId() {
        return groupId;
    }

    public void setGroupId(int groupId) {
        this.groupId = groupId;
    }

    public long getUserId() {
        return userId;
    }

    public void setUserId(long userId) {
        this.userId = userId;
    }

    public int getType() {
        return type;
    }

    public void setType(int type) {
        this.type = type;
    }

    public int getRegionId() {
        return regionId;
    }

    public void setRegionId(int regionId) {
        this.regionId = regionId;
    }

    public String getRewards() {
        return rewards;
    }

    public void setRewards(String rewards) {
        this.rewards = rewards;
    }

    public String getConsume() {
        return consume;
    }

    public void setConsume(String consume) {
        this.consume = consume;
    }

    public int getMonsterId() {
        return monsterId;
    }

    public void setMonsterId(int monsterId) {
        this.monsterId = monsterId;
    }

    public int getEventId() {
        return eventId;
    }

    public void setEventId(int eventId) {
        this.eventId = eventId;
    }

    public List<String> getParamList() {
        return paramList;
    }

    public void setParamList(List<String> paramList) {
        this.paramList = paramList;
    }

    public UserBaseInfo getEnemyBaseInfo() {
        return enemyBaseInfo;
    }

    public void setEnemyBaseInfo(UserBaseInfo enemyBaseInfo) {
        this.enemyBaseInfo = enemyBaseInfo;
    }

    public UserBaseInfo getUserBaseInfo() {
        return userBaseInfo;
    }

    public void setUserBaseInfo(UserBaseInfo userBaseInfo) {
        this.userBaseInfo = userBaseInfo;
    }

    public int getAttackType() {
        return attackType;
    }

    public void setAttackType(int attackType) {
        this.attackType = attackType;
    }

    public UserBaseInfo getFriendBaseInfo() {
        return friendBaseInfo;
    }

    public void setFriendBaseInfo(UserBaseInfo friendBaseInfo) {
        this.friendBaseInfo = friendBaseInfo;
    }

    public long getLogTime() {
        return logTime;
    }

    public void setLogTime(long logTime) {
        this.logTime = logTime;
    }


}
